#棒グラフ

棒グラフは、データ値を縦棒で表示する方法を提供します。傾向データを表示したり、複数のデータセットを並べて比較したりするために使用されることがあります。

const config = {
  type: 'bar',
  data: data,
  options: {
    scales: {
      y: {
        beginAtZero: true
      }
    }
  },
};

#データセットのプロパティ

名前空間:

  • data.datasets[index]- このデータセットのみのオプション
  • options.datasets.bar- すべての棒データセットのオプション
  • options.elements.bar- すべてのオプションバー要素
  • options- チャート全体のオプション

棒グラフを使用すると、データセットごとに多数のプロパティを指定できます。 これらは、特定のデータセットの表示プロパティを設定するために使用されます。例えば、 バーの色は通常このように設定されます。 だけdataオプションはデータセット名前空間で指定する必要があります。

名前 タイプ スクリプト可能 インデックス可能 デフォルト
backgroundColor Color はい はい 'rgba(0, 0, 0, 0.1)'
base ディー5017c-b42c-440c-92af-575ed774ac4a はい はい
barPercentage number - - 0.9
barThickness number|string - -
borderColor Color はい はい 'rgba(0, 0, 0, 0.1)'
01b0d6d0-9955-46aa-b6e9-ee1af2445お父さん string|boolean はい はい 'start'
borderWidth number|object はい はい 0
borderRadius number|object はい はい 0
categoryPercentage number - - 0.8
clip number|object|false - -
data object|object[]|number[]|string[] - - 必要
grouped boolean - - true
hoverBackgroundColor Color はい はい
hoverBorderColor Color はい はい
hoverBorderWidth number はい はい 1
hoverBorderRadius number はい はい 0
indexAxis string - - 'x'
inflateAmount number|'auto' はい はい 'auto'
maxBarThickness number - -
minBarLength number - -
label string - - ''
order number - - 0
pointStyle pointStyle はい - 'circle'
skipNull boolean - -
stack string - - 'bar'
xAxisID string - - 最初の X 軸
yAxisID string - - 最初の y 軸

これらすべての値がundefined、で説明されているスコープにフォールバックします。オプションの解決策

#データセット構成の例

data: {
    datasets: [{
        barPercentage: 0.5,
        barThickness: 6,
        maxBarThickness: 8,
        minBarLength: 2,
        data: [10, 20, 30, 40, 50, 60, 70]
    }]
};

#全般的

名前 説明
base 値軸に沿ったデータ単位でのバーの基本値。設定されていない場合は、デフォルトで値軸の基準値が使用されます。
clip chartArea を基準にしてクリップする方法。正の値ではオーバーフローが許可され、負の値では chartArea 内の多くのピクセルがクリップされます。0= chartArea でクリップします。クリッピングは側面ごとに構成することもできます。clip: {left: 5, top: false, right: -2, bottom: 0}
grouped バーをインデックス軸上でグループ化する必要があります。いつtrueの場合、同じインデックス値を持つすべてのデータセットが、そのインデックス値を中心に隣り合って配置されます。いつfalse、各バーは実際のインデックス軸の値に配置されます。
indexAxis データセットの基本軸。'x'垂直バーとb3924a48-f5f2-47e2-b223-dfcb486961b水平バー用。
label 凡例とツールヒントに表示されるデータセットのラベル。
order データセットの描画順序。スタック、ツールヒント、凡例の順序にも影響します。もっと
skipNull もしもtrue、null または未定義の値は、バーのサイズを決定する際の間隔の計算には使用されません。
stack このデータセットが属するグループの ID (スタックすると、各グループは個別のスタックになります)。もっと
xAxisID このデータセットをプロットする X 軸の ID。
yAxisID このデータセットをプロットする Y 軸の ID。

#スタイリング

各バーのスタイルは、次のプロパティで制御できます。

名前 説明
backgroundColor バーの背景色。
borderColor バーの境界線の色。
borderSkipped バーを描画するときにスキップするエッジ。
borderWidth バーの境界線の幅 (ピクセル単位)。
borderRadius バーの境界線の半径 (ピクセル単位)。
minBarLength バーがピクセル単位で最小の長さになるようにこれを設定します。
pointStyle 凡例のポイントのスタイル。もっと...

これらすべての値がundefined、関連付けられたものへのフォールバックelements.bar.*オプション。

#ボーダースキップされました

この設定は、塗りつぶしの基部にバー ストロークを描画しないようにするか、境界線の半径を無効にするために使用されます。 一般に、グラフ タイプを作成する場合を除き、これを変更する必要はありません。 棒グラフから派生したものです。

ノート

縦棒グラフの負のバーの場合、topbottom反転されています。同じことが当てはまりますleftとb18cfa71-736c-49a9-ビーズ-d9a2e6a62347水平チャートで。

オプションは次のとおりです。

  • 'start'
  • 'end'
  • 'middle'(積み上げバーでのみ有効: バー間の境界線はスキップされます)
  • 'bottom'
  • 'left'
  • 'top'
  • 'right'
  • false(国境を越えないでください)
  • true(すべての境界線をスキップ)

#境界線の幅

この値が数値の場合、長方形のすべての辺 (左、上、右、下) に適用されます。borderSkipped。この値がオブジェクトの場合、leftプロパティは左側の境界線の幅を定義します。同様に、righttop、 とbottomプロパティも指定できます。省略された境界線とborderSkippedスキップされます。

#境界半径

この値が数値の場合、四角形のすべての角 (topLeft、topRight、bottomLeft、bottomRight) に適用されます (ただし、長方形に接する角は除きます)。borderSkipped。この値がオブジェクトの場合、topLeftプロパティは、左上隅の境界線の半径を定義します。同様に、topRightbottomLeft、 とbottomRightプロパティも指定できます。省略されたコーナーと接触するコーナーborderSkippedスキップされます。たとえば、top境界線がスキップされ、コーナーの境界線の半径topLefttopRightもスキップされます。

積み上げチャート

境界線の半径が数値として指定され、チャートが積み上げられている場合、半径はスタックの端にあるバー、またはバーが浮いている場所にのみ適用されます。オブジェクト構文を使用して、この動作をオーバーライドできます。

#インフレ金額

このオプションを使用すると、バーの描画に使用される四角形を膨張させることができます。これは、次の場合にバー間のアーティファクトを非表示にするために使用できます。barPercentage*categoryPercentageは 1 です。デフォルト値は'auto'ほとんどの場合、機能するはずです。

#インタラクション

各バーとの相互作用は、次のプロパティで制御できます。

名前 説明
hoverBackgroundColor ホバーしたときのバーの背景色。
hoverBorderColor カーソルを置いたときのバーの境界線の色。
hoverBorderWidth ホバーしたときのバーの境界線の幅 (ピクセル単位)。
hoverBorderRadius ホバーしたときのバーの境界線の半径 (ピクセル単位)。

これらすべての値がundefined、関連付けられたものへのフォールバックelements.bar.*オプション。

#バーパーセンテージ

各バーがカテゴリの幅内に収まる使用可能な幅のパーセント (0 ~ 1)。 1.0 はカテゴリ全体の幅を取り、バーを互いに隣接して配置します。もっと...

#カテゴリパーセンテージ

各カテゴリの利用可能な幅のパーセント (0 ~ 1) がサンプル幅内に収まる必要があります。もっと...

#バーの厚さ

この値が数値の場合、各バーの幅にピクセル単位で適用されます。これが施行されると、barPercentagecategoryPercentage無視されます。

に設定されている場合'flex'の場合、基本サンプル幅は前後のサンプルに基づいて自動的に計算され、重複することなく利用可能な幅全体が取得されます。次に、バーのサイズを次のように設定します。barPercentagecategoryPercentage。パーセンテージ オプションが 1 の場合、ギャップはありません。このモードでは、データが等間隔でない場合に、異なる幅のバーが生成されます。

設定されていない場合 (デフォルト)、ベースのサンプル幅はバーの重なりを防ぐ最小の間隔を使用して計算され、バーのサイズは以下を使用して決定されます。barPercentagecategoryPercentage。このモードでは、常に同じサイズのバーが生成されます。

#最大バーの厚さ

バーのサイズがこれより太くならないようにこれを設定します。

#スケール構成

棒グラフは、関連する構成から次の構成に固有のデフォルト値を設定します。scaleオプション:

名前 タイプ デフォルト 説明
offset boolean true true の場合、余分なスペースが両端に追加され、グラフ領域に収まるように軸が拡大縮小されます。
grid.offset boolean true true の場合、特定のデータ ポイントのバーがグリッド線の間に収まります。グリッド線は目盛り間隔の半分だけ左に移動します。 false の場合、グリッド線はバーの中央を真下に移動します。もっと...

#スケール構成例

options = {
    scales: {
        x: {
            grid: {
              offset: true
            }
        }
    }
};

#グリッド線のオフセット

true の場合、特定のデータ ポイントのバーがグリッド線の間に収まります。グリッド線は、グリッド線間のスペースである目盛り間隔の半分だけ左に移動します。 false の場合、グリッド線はバーの中央を真下に移動します。これは、棒グラフのカテゴリ スケールでは true に設定されますが、他のスケールまたはグラフ タイプではデフォルトで false に設定されます。

#デフォルトのオプション

作成されたすべての棒グラフに構成設定を適用することが一般的です。グローバル棒グラフ設定は次の場所に保存されます。Chart.overrides.bar。グローバル オプションを変更すると、変更後に作成されたグラフにのみ影響します。既存のチャートは変更されません。

#barパーセンテージとカテゴリパーセンテージ

以下に、バーのパーセンテージ オプションとカテゴリのパーセンテージ オプションの関係を示します。

// categoryPercentage: 1.0
// barPercentage: 1.0
Bar:        | 1.0 | 1.0 |
Category:   |    1.0    |
Sample:     |===========|
// categoryPercentage: 1.0
// barPercentage: 0.5
Bar:          |.5|  |.5|
Category:  |      1.0     |
Sample:    |==============|
// categoryPercentage: 0.5
// barPercentage: 1.0
Bar:             |1.0||1.0|
Category:        |   .5   |
Sample:     |==================|

#データ構造

サポートされているすべてのデータ構造棒グラフで使用できます。

#積み上げ棒グラフ

X 軸と Y 軸の設定を変更して積み上げを有効にすることで、棒グラフを積み上げ棒グラフに構成できます。積み上げ棒グラフを使用すると、1 つのデータ系列が多数の小さな部分からどのように構成されているかを示すことができます。

const stackedBar = new Chart(ctx, {
    type: 'bar',
    data: data,
    options: {
        scales: {
            x: {
                stacked: true
            },
            y: {
                stacked: true
            }
        }
    }
});

#横棒グラフ

水平棒グラフは、垂直棒グラフのバリエーションです。傾向データを表示したり、複数のデータセットを並べて比較したりするために使用されることがあります。 これを達成するには、indexAxisオプションオブジェクトのプロパティを'y'。 このプロパティのデフォルトは次のとおりです'x'したがって、垂直バーが表示されます。

const config = {
  type: 'bar',
  data,
  options: {
    indexAxis: 'y',
  }
};

#横棒グラフの構成オプション

横棒グラフの構成オプションは、横棒グラフの構成オプションと同じです。棒グラフ。ただし、棒グラフの x 軸に指定されたオプションはすべて、横棒グラフの y 軸に適用されます。

#内部データ形式

{x, y, _custom}どこ_custom積み上げ棒のプロパティを定義するオプションのオブジェクトです。{start, end, barStart, barEnd, min, max}startendは入力値です。この二つが繰り返されるのは、barStart(原点に近い)、barEnd(原点からさらに遠い)、minmax

最終更新: 2023 年 4 月 28 日、午前 5 時 18 分 20 秒